package com.yunyao.framework.vo.Invoice;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

@Data
public class InvoiceSourceVO {

    /**
     * 主键ID
     */
    private String id;

    /**
     * 发票ID
     */
    private String invoiceId;

    /**
     * 对账单或者结算单主键
     */
    private String bizId;

    /**
     * 结算时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date settlementDate;

    /**
     * 对账周期
     */
    private String reconciliationCycle;
    /**
     * 对账周期开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date reconciliationStartDate;

    /**
     * 对账周期结束时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd",timezone="GMT+8")
    private Date reconciliationEndDate;

    /**
     * 实际含税总金额
     */
    private BigDecimal settlementTotalPrice;

    /**
     * 对账单总数量
     */
    private Integer settlementNum;

    /**
     * 订单总数量
     */
    private Integer orderNum;

    /**
     * 本次开票订单数
     */
    private Integer orderInvoiceNum;
    /**
     * 本次开票订单数
     */
    private Integer ykorderInvoiceNum;

    /**
     * 状态
     */
    @TableField("`status`")
    private Integer status;

    /**
     * 删除标识
     */
    private Integer isDeleted;

    /**
     * 创建人
     */
    private String createdBy;

    /**
     * 创建部门
     */
    private String createDept;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date createdAt;

    /**
     * 修改人
     */
    private String updatedBy;

    /**
     * 修改时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    private Date updatedAt;

    /**
     * 租户ID
     */
    private String tenantId;

    /**
     * 对账确认金额
     */
    private BigDecimal reconciliationPrice;
}
